// 页面form 与 接口data 数据结构互相转换
// 日管控
import {separator, imageDomain} from '@/common/js/resource.js';
import tool from '@/common/js/tools.js';
export default {
	/**
	 * 将接口返回的res.data转换成页面的formData
	 * @param {Object} data 接口返回的data
	 * @return {Object} 页面formData
	 */
	newForm(data) {
		return {
			id:  data.ID,
			companyId: data.QiYeID,
			nickname: data.DengJiRen, // 记录人
			test_date: data.JianChaDate, // 检测日期
			images1: tool.addImageDomain(data.JianChaRenImgUrl), // 检查人签字
			images2: tool.addImageDomain(data.FuZeRenImgUrl), // 负责人签字
			remark: data.BeiZhu, // 备注
			status: data.ZhuangTai, // 状态 0暂存，1提交
		}
	},
	/**
	 * 将接口返回的res.data转换成页面的dataList
	 * @param {Array} list 接口返回的list
	 * @return {Object} 页面dataList
	 */
	newFormList(list) {
		let arr = list.map(data => {
			return {
				id:  data.ID,
				companyId: data.QiYeID,
				nickname: data.DengJiRen, // 记录人
				test_date: data.JianChaDate, // 检测日期
				images1: tool.addImageDomain(data.JianChaRenImgUrl), // 检查人签字
				images2: tool.addImageDomain(data.FuZeRenImgUrl), // 负责人签字
				remark: data.BeiZhu, // 备注
				status: data.ZhuangTai, // 状态 0暂存，1提交
			}
		})
		return arr;
	},
	/**
	 * 将页面页面的formData转换成接口需要的data
	 * @param {Object} form 页面formData
	 * @return {Object} 传给接口的data
	 */
	newApiData(data) {
		return {
			RiGuanKongID: data.id || '',
			QiYeID: data.companyId,
			DengJiRen: data.nickname, // 记录人
			JianChaDate: data.test_date, // 检测日期
			JianChaRenImgUrl: data.images1.replaceAll(imageDomain, ''), // 检查人签字
			FuZeRenImgUrl: data.images2.replaceAll(imageDomain, ''), // 负责人签字
			BeiZhu: data.remark, // 备注
			// : data.status: 0, // 状态 0暂存，1提交
		}
	},
	/**
	 * 详情中获取的答案，封装到form.answers
	 * 将接口返回的res.data转换成页面的dataList
	 * @param {Array} list 接口返回的list
	 * @return {Object} 页面dataList
	 */
	newAnswerList(list) {
		let arr = list.map(data => {
			return {
				id: data.RJieGuoID, // 修改时，已回答过的id（结果id）主键
				qid: data.RItemID, // 问题id
				answer: data.DaAnID + '', // 是否符合 0是1否
				remark: data.BeiZhu, // 备注
				images: data.RiGuanKongItemImageUrl ? tool.addImageDomain(data.RiGuanKongItemImageUrl).split(separator) : [], // 照片
			}
		})
		return arr;
	},
	/**
	 * 将页面答案转成api答案格式
	 * 将页面的formData转换成接口需要的data
	 * @param {Object} form 页面formData
	 * @return {Object} 传给接口的data
	 */
	newApiAnswer(data, dayId) {
		/*
		aid: 修改时，已回答过的id（结果id）
		qid: ques.id, // 问题id
		answer: ques.answer, // 是否符合 0是1否
		remark: ques.remark, // 备注
		images: ques.images, // 照片
		*/
		return {
			RJieGuoID: data.aid || '', // 日管控结果ID
			RiGuanKongID: dayId, // 日管控ID
			RItemID: data.qid, // 问题id
			DaAnID: data.answer, // 是否符合 0是1否
			BeiZhu: data.remark || '', // 备注
			RiGuanKongItemImageUrl: data.images.toString().replaceAll(imageDomain, '') || '', // 照片
		}
	},
	// 比较新form和原form是否相同（无变化）
	compare(form1, form2){
		return form1.nickname  == form2.nickname
			&& form1.test_date == form2.test_date
			&& form1.images1   == form2.images1
			&& form1.images2   == form2.images2
			&& form1.remark    == form2.remark
	},
	// 比较新Answer和原Answer是否相同（无变化）
	compareAnswer(form1, form2){
		return form1.qid   == (form2.qid + '')
			&& form1.answer == form2.answer
			&& form1.remark == form2.remark
			&& (form1.images.toString() || '') == (form2.images.toString() || '')
	},
}